/*
 * typedefs.h
 *
 * Created: 12/13/2011 2:26:51 PM
 *  Author: Alan Chatham
 *
 *	This file contains all the typedef'ed structs we're using to store button data
 */ 


#ifndef PHYSICAL_BUTTON_LIST_T
#define PHYSICAL_BUTTON_LIST_T

// How many total inputs do we have?
#define NUMBER_OF_INPUTS 156
#define NUMBER_OF_DIGITAL_BUTTONS 128

// This one is an abstract representation of what physical buttons we have
//  on the controller itself
typedef struct physicalButtonList_t{
        uint8_t bt0On;
        uint8_t bt1On;
        uint8_t bt2On;
        uint8_t bt3On;
        uint8_t bt4On;
        uint8_t bt5On;
        uint8_t bt6On;
        uint8_t bt7On;
       
        uint8_t bt8On;
        uint8_t bt9On;
        uint8_t bt10On;
        uint8_t bt11On;
        uint8_t bt12On;
        uint8_t bt13On;
        uint8_t bt14On;
        uint8_t bt15On;
       
        uint8_t bt16On;
        uint8_t bt17On;
        uint8_t bt18On;
        uint8_t bt19On;
        uint8_t bt20On;
        uint8_t bt21On;
        uint8_t bt22On;
        uint8_t bt23On;
       
        uint8_t bt24On;
        uint8_t bt25On;
        uint8_t bt26On;
        uint8_t bt27On;
        uint8_t bt28On;
        uint8_t bt29On;
        uint8_t bt30On;
        uint8_t bt31On;
       
        uint8_t bt32On;
        uint8_t bt33On;
        uint8_t bt34On;
        uint8_t bt35On;
        uint8_t bt36On;
        uint8_t bt37On;
        uint8_t bt38On;
        uint8_t bt39On;
       
        uint8_t bt40On;
        uint8_t bt41On;
        uint8_t bt42On;
        uint8_t bt43On;
        uint8_t bt44On;
        uint8_t bt45On;
        uint8_t bt46On;
        uint8_t bt47On;
       
        uint8_t bt48On;
        uint8_t bt49On;
        uint8_t bt50On;
        uint8_t bt51On;
        uint8_t bt52On;
        uint8_t bt53On;
        uint8_t bt54On;
        uint8_t bt55On;
       
        uint8_t bt56On;
        uint8_t bt57On;
        uint8_t bt58On;
        uint8_t bt59On;
        uint8_t bt60On;
        uint8_t bt61On;
        uint8_t bt62On;
        uint8_t bt63On;
       
        uint8_t bt64On;
        uint8_t bt65On;
        uint8_t bt66On;
        uint8_t bt67On;
        uint8_t bt68On;
        uint8_t bt69On;
        uint8_t bt70On;
        uint8_t bt71On;
       
        uint8_t bt72On;
        uint8_t bt73On;
        uint8_t bt74On;
        uint8_t bt75On;
        uint8_t bt76On;
        uint8_t bt77On;
        uint8_t bt78On;
        uint8_t bt79On;
       
        uint8_t bt80On;
        uint8_t bt81On;
        uint8_t bt82On;
        uint8_t bt83On;
        uint8_t bt84On;
        uint8_t bt85On;
        uint8_t bt86On;
        uint8_t bt87On;
       
        uint8_t bt88On;
        uint8_t bt89On;
        uint8_t bt90On;
        uint8_t bt91On;
        uint8_t bt92On;
        uint8_t bt93On;
        uint8_t bt94On;
        uint8_t bt95On;
       
        uint8_t bt96On;
        uint8_t bt97On;
        uint8_t bt98On;
        uint8_t bt99On;
        uint8_t bt100On;
        uint8_t bt101On;
        uint8_t bt102On;
        uint8_t bt103On;
       
        uint8_t bt104On;
        uint8_t bt105On;
        uint8_t bt106On;
        uint8_t bt107On;
        uint8_t bt108On;
        uint8_t bt109On;
        uint8_t bt110On;
        uint8_t bt111On;
       
        uint8_t bt112On;
        uint8_t bt113On;
        uint8_t bt114On;
        uint8_t bt115On;
        uint8_t bt116On;
        uint8_t bt117On;
        uint8_t bt118On;
        uint8_t bt119On;
       
        uint8_t bt120On;
        uint8_t bt121On;
        uint8_t bt122On;
        uint8_t bt123On;
        uint8_t bt124On;
        uint8_t bt125On;
        uint8_t bt126On;
        uint8_t bt127On;

        uint8_t al0;
        uint8_t al1;
        uint8_t al2;
        uint8_t al3;
        uint8_t al4;
        uint8_t al5;
        uint8_t al6;
        uint8_t al7;
        uint8_t al8;
        uint8_t al9;
        uint8_t al10;
        uint8_t al11;
        uint8_t al12;
        uint8_t al13;
        uint8_t al14;
        uint8_t al15;
       
        uint8_t al16;
        uint8_t al17;
        uint8_t al18;
        uint8_t al19;
        uint8_t al20;
        uint8_t al21;
        uint8_t al22;
        uint8_t al23;
        uint8_t al24;
        uint8_t al25;
        uint8_t al26;
        uint8_t al27;
        uint8_t al28;
        uint8_t al29;
        uint8_t al30;
        uint8_t al31;
       
        uint8_t al32;
        uint8_t al33;
        uint8_t al34;
        uint8_t al35;
        uint8_t al36;
        uint8_t al37;
        uint8_t al38;
        uint8_t al39;
        uint8_t al40;
        uint8_t al41;
        uint8_t al42;
        uint8_t al43;
        uint8_t al44;
        uint8_t al45;
        uint8_t al46;
        uint8_t al47;
	
} physicalButtonList_t;
#endif // PHYSICAL_BUTTON_LIST_T
